package com.xmtlxx.oms.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.xmtlxx.common.annotation.ExcelDictFormat;
import com.xmtlxx.common.convert.ExcelDictConvert;
import com.xmtlxx.system.domain.SysOss;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.*;


/**
 * 出入库订单明细视图对象 t_task_dtl
 *
 * @author xmtlxx
 * @date 2022-08-12
 */
@Data
@ApiModel("出入库订单明细视图对象")
@ExcelIgnoreUnannotated
public class TaskDtlVo {

    private static final long serialVersionUID = 1L;

    /**
     * 明细ID
     */
    @ExcelProperty(value = "明细ID")
    @ApiModelProperty("明细ID")
    private String id;

    /**
     * 出入库订单ID
     */
    @ExcelProperty(value = "出入库订单ID")
    @ApiModelProperty("出入库订单ID")
    private String taskId;

    /**
     * 物品编号
     */
    @ExcelProperty(value = "物品编号")
    @ApiModelProperty("物品编号")
    private String pno;

    /**
     * 物品名称
     */
    @ExcelProperty(value = "物品名称")
    @ApiModelProperty("物品名称")
    private String name;

    /**
     * 物品所在单位
     */
    @ExcelProperty(value = "物品所在单位")
    @ApiModelProperty("物品所在单位")
    private Long deptId;

    /**
     * 物品所在机构单位
     */
    @ExcelProperty(value = "物品所在机构单位")
    @ApiModelProperty("物品所在机构单位")
    private Long localId;

    /**
     * 数量
     */
    @ExcelProperty(value = "数量")
    @ApiModelProperty("数量")
    private Long nums;

    @ExcelProperty(value = "单位")
    @ApiModelProperty("单位")
    private String unit;

    @ExcelProperty(value = "删除标识", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_del_flag")
    private String delFlag;

    @ApiModelProperty(value = "部门")
    private String deptName;

    @ApiModelProperty(value = "机构")
    private String localName;

    /**
     * 处置方式
     */
    @ApiModelProperty(value = "处置方式")
    private String dealType;

    private List<SysOss> oss;

    @ApiModelProperty("分类")
    private String classifyId;

    @ApiModelProperty("特征")
    private String character;

    /**
     * 是否封箱
     */
    @ApiModelProperty("是否封箱")
    private String seal;

    private String  classifyName;

    private String secondClassifyName;

    private String thirdClassifyName;

    /**
     * 箱号
     */
    private String boxNo;

    /**
     * 货箱id
     */
    private String boxId;

    private String status;

    /**
     * 保管密码
     */
    @ApiModelProperty("保管密码")
    private String password;

    private String storeId;


    private String taskNo;
    private Date returnTime;
    private String taskName;
    private String returnStatus;

    private String locationName;
    private List<String> pdfList;

    private String taskType;
    /**
     * 是否取证单
     */
    private String evidence;
    private String returnId;

    /**
     * 是否拣选
     */
    private Integer isPick;

    private String carKey;
    private String driveLicen;
    private String registerBook;

    @ApiModelProperty("登记数量")
    private Long registerNums;

    /**
     * 鉴定
     */
    private Boolean evaluate;

    /**
     * 交接数量
     */
    private String handoverNums;
    /**
     * 交接单位
     */
    private String handoverUnit;

}
